Termination Proof Script

Consider the TRS R consisting of the rewrite rules
1:    qsort(nil)  → nil
2:    qsort(x . y)  → qsort(lowers(x,y)) ++ (x . qsort(greaters(x,y)))
3:    lowers(x,nil)  → nil
4:    lowers(x,y . z)  → if(y x,y . lowers(x,z),lowers(x,z))
5:    greaters(x,nil)  → nil
6:    greaters(x,y . z)  → if(y x,greaters(x,z),y . greaters(x,z))
There are 6 dependency pairs:
7:    QSORT(x . y)  → QSORT(lowers(x,y))
8:    QSORT(x . y)  → LOWERS(x,y)
9:    QSORT(x . y)  → QSORT(greaters(x,y))
10:    QSORT(x . y)  → GREATERS(x,y)
11:    LOWERS(x,y . z)  → LOWERS(x,z)
12:    GREATERS(x,y . z)  → GREATERS(x,z)
The approximated dependency graph contains 2 SCCs: {12} and {11}. Hence the TRS is terminating.
Tyrolean Termination Tool  (0.02 seconds)   ---  May 3, 2006